/* 
 * Aristo Ingenieros SRL.
 */

var clienteweb;
clienteweb = $(document);
clienteweb.ready(inicio);

var objdialoglogin = {
    heigth: 400,
    width: 500,
    closeOnEscape: false,
    resizable: false,
    hide: 'explode',
    show: 'slide'/*
    close: verificar*/
};

var objdialogMensaje = {
    width: 400,
    resizable: false,
    autoOpen: false,
    modal: true,
    hide: 'explode',
    buttons: botones
};

var botones = {
    "ACEPTAR": function(){
        $(this).dialog("close");
    }
};

function inicio(){
    //*********************
    var idlogin = $("#login");
    idlogin.dialog(objdialoglogin);
    
    //*********************
    var objboton = $("#button");
    objboton.button();
    objboton.click(verificar);
    
    //*********************
    var objnombres = $("#edit-name");
    objnombres.keypress(evttxtNombres);
    
    //*********************
    var objContrasenia = $("#edit-pass");
    objContrasenia.keypress(evttxtContrasenia);
    
    //*********************
    var idpanel = $("#panelSuperior");
    idpanel.load("ui/html/dialogMensaje.html", function(){
        var idventana = $("#dialog-mensaje");
        idventana.hide();
        idventana.dialog(objdialogMensaje);        
    });
    
    fverificaLogin();
}

function evttxtNombres(event) {
    if(event.which === 13) {
        var caja = $("#edit-pass");
        caja.focus();
    }
}

function evttxtContrasenia(event) {
    if(event.which === 13) {
        verificar();
    }
}

function mensajeAristo(img, texto) {
    var html = '<img src="ui/img/' + img + '"/>&nbsp;&nbsp;' + texto;
    var objDescripcion = $("#dialog-descripcion");
    objDescripcion.html(html);
    var objMensaje = $("#dialog-mensaje");
    objMensaje.dialog("open");
    /*setInterval(function(){
        objMensaje.dialog("close");
    }, 5000);*/
}

function verificar() {
    var txtusuario = $("#edit-name").val();
    var txtcontrasenia = $("#edit-pass").val();
    
    if(txtusuario.length>0 && txtcontrasenia.length>0) {
        consumirInicioSesion(txtusuario, txtcontrasenia);
    } else {
        mensajeAristo('warning.png', 'Ingrese Usuario y Contrase&ntilde;a.');
    }
}

function consumirInicioSesion(usuario, contrasenia) {
    //el usuario solo podra tener 100 errores por cuenta
    var json = new Object();
    json.mod = 'LOGIN';
    json.usuario = usuario;
    json.contrasenia = MD5(contrasenia);
    
    var consumirJson = {
        data: json,
        type: 'POST',
        dataType: 'json',
        url: URI_ARISTO,
        success: fejecutada,
        error: ferror
    };
    
    $.ajax(consumirJson);
}

function fejecutada(data) {
    if(data.estado === 'SUCCESS') {
        mensajeAristo('ok.png', data.descripcion);
        fverificaLogin();
    } else {
        mensajeAristo('warning.png', data.descripcion);
    }
}

function ferror() {
    mensajeAristo('warning.png', 'Error, revise su conexión a internet.');
}

// verificamos inicio de sesion

function fverificaLogin() {    
    var json = new Object();
    json.mod = 'SESSION';
    
    var consumirJson = {
        data: json,
        type: 'GET',
        dataType: 'json',
        url: URI_ARISTO,
        success: vlfejecutada,
        error: ferror
    };
    
    $.ajax(consumirJson);
}

function vlfejecutada(data) {
    if(data.estado === 'SUCCESS') {
        var modulo = data.module;
        if(modulo === 'CONTABILIDAD') {
            $(location).attr('href',URI_CONTABILIDAD);
        } else if(modulo === 'SECRETARIA') {
            $(location).attr('href',URI_SECRETARIA);
        }
    } else {
        mensajeAristo('warning.png', data.descripcion);
    }
}